[急! 求助] 一些关于fseek的问题

来源:百度知道 编辑:UC知道 时间:2024/06/04 06:09:23
fseek (pf, -10l*sizeof(int), SEEL_END);

请问各位这个语句是什么意思啊..? 为什么是前移20个字节啊, int不是4个字节吗?
各位大侠不好意思, 有一个地方答错了, 应该是SEEK_END...

在32位机上是前移40个字节,在16位机上才是前移20个字节。此代码不可以移植。

楼主用小写,真把人看死

fseek (pf, -10L*sizeof(int), SEEL_END);

sizeof(int)是一个机器字长,对于16为机器是2个字节,32位的机器是4个字节;
由于TC编译只支持16位,所以在TC编译器下sizeof(int)=2;

所以这句话的意思是
fseek (pf, -10L*sizeof(int), SEEL_END);
将文件指针移到文件尾SEEL_END,前移20个字节的地方